package com.desksoft.ecommerce.entity.mall.dto;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class ViptipsExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public ViptipsExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andListidIsNull() {
            addCriterion("ListID is null");
            return (Criteria) this;
        }

        public Criteria andListidIsNotNull() {
            addCriterion("ListID is not null");
            return (Criteria) this;
        }

        public Criteria andListidEqualTo(Long value) {
            addCriterion("ListID =", value, "listid");
            return (Criteria) this;
        }

        public Criteria andListidNotEqualTo(Long value) {
            addCriterion("ListID <>", value, "listid");
            return (Criteria) this;
        }

        public Criteria andListidGreaterThan(Long value) {
            addCriterion("ListID >", value, "listid");
            return (Criteria) this;
        }

        public Criteria andListidGreaterThanOrEqualTo(Long value) {
            addCriterion("ListID >=", value, "listid");
            return (Criteria) this;
        }

        public Criteria andListidLessThan(Long value) {
            addCriterion("ListID <", value, "listid");
            return (Criteria) this;
        }

        public Criteria andListidLessThanOrEqualTo(Long value) {
            addCriterion("ListID <=", value, "listid");
            return (Criteria) this;
        }

        public Criteria andListidIn(List<Long> values) {
            addCriterion("ListID in", values, "listid");
            return (Criteria) this;
        }

        public Criteria andListidNotIn(List<Long> values) {
            addCriterion("ListID not in", values, "listid");
            return (Criteria) this;
        }

        public Criteria andListidBetween(Long value1, Long value2) {
            addCriterion("ListID between", value1, value2, "listid");
            return (Criteria) this;
        }

        public Criteria andListidNotBetween(Long value1, Long value2) {
            addCriterion("ListID not between", value1, value2, "listid");
            return (Criteria) this;
        }

        public Criteria andCardnoIsNull() {
            addCriterion("CardNo is null");
            return (Criteria) this;
        }

        public Criteria andCardnoIsNotNull() {
            addCriterion("CardNo is not null");
            return (Criteria) this;
        }

        public Criteria andCardnoEqualTo(String value) {
            addCriterion("CardNo =", value, "cardno");
            return (Criteria) this;
        }

        public Criteria andCardnoNotEqualTo(String value) {
            addCriterion("CardNo <>", value, "cardno");
            return (Criteria) this;
        }

        public Criteria andCardnoGreaterThan(String value) {
            addCriterion("CardNo >", value, "cardno");
            return (Criteria) this;
        }

        public Criteria andCardnoGreaterThanOrEqualTo(String value) {
            addCriterion("CardNo >=", value, "cardno");
            return (Criteria) this;
        }

        public Criteria andCardnoLessThan(String value) {
            addCriterion("CardNo <", value, "cardno");
            return (Criteria) this;
        }

        public Criteria andCardnoLessThanOrEqualTo(String value) {
            addCriterion("CardNo <=", value, "cardno");
            return (Criteria) this;
        }

        public Criteria andCardnoLike(String value) {
            addCriterion("CardNo like", value, "cardno");
            return (Criteria) this;
        }

        public Criteria andCardnoNotLike(String value) {
            addCriterion("CardNo not like", value, "cardno");
            return (Criteria) this;
        }

        public Criteria andCardnoIn(List<String> values) {
            addCriterion("CardNo in", values, "cardno");
            return (Criteria) this;
        }

        public Criteria andCardnoNotIn(List<String> values) {
            addCriterion("CardNo not in", values, "cardno");
            return (Criteria) this;
        }

        public Criteria andCardnoBetween(String value1, String value2) {
            addCriterion("CardNo between", value1, value2, "cardno");
            return (Criteria) this;
        }

        public Criteria andCardnoNotBetween(String value1, String value2) {
            addCriterion("CardNo not between", value1, value2, "cardno");
            return (Criteria) this;
        }

        public Criteria andTipstimeIsNull() {
            addCriterion("TipsTime is null");
            return (Criteria) this;
        }

        public Criteria andTipstimeIsNotNull() {
            addCriterion("TipsTime is not null");
            return (Criteria) this;
        }

        public Criteria andTipstimeEqualTo(Date value) {
            addCriterion("TipsTime =", value, "tipstime");
            return (Criteria) this;
        }

        public Criteria andTipstimeNotEqualTo(Date value) {
            addCriterion("TipsTime <>", value, "tipstime");
            return (Criteria) this;
        }

        public Criteria andTipstimeGreaterThan(Date value) {
            addCriterion("TipsTime >", value, "tipstime");
            return (Criteria) this;
        }

        public Criteria andTipstimeGreaterThanOrEqualTo(Date value) {
            addCriterion("TipsTime >=", value, "tipstime");
            return (Criteria) this;
        }

        public Criteria andTipstimeLessThan(Date value) {
            addCriterion("TipsTime <", value, "tipstime");
            return (Criteria) this;
        }

        public Criteria andTipstimeLessThanOrEqualTo(Date value) {
            addCriterion("TipsTime <=", value, "tipstime");
            return (Criteria) this;
        }

        public Criteria andTipstimeIn(List<Date> values) {
            addCriterion("TipsTime in", values, "tipstime");
            return (Criteria) this;
        }

        public Criteria andTipstimeNotIn(List<Date> values) {
            addCriterion("TipsTime not in", values, "tipstime");
            return (Criteria) this;
        }

        public Criteria andTipstimeBetween(Date value1, Date value2) {
            addCriterion("TipsTime between", value1, value2, "tipstime");
            return (Criteria) this;
        }

        public Criteria andTipstimeNotBetween(Date value1, Date value2) {
            addCriterion("TipsTime not between", value1, value2, "tipstime");
            return (Criteria) this;
        }

        public Criteria andTipstypeIsNull() {
            addCriterion("TipsType is null");
            return (Criteria) this;
        }

        public Criteria andTipstypeIsNotNull() {
            addCriterion("TipsType is not null");
            return (Criteria) this;
        }

        public Criteria andTipstypeEqualTo(Integer value) {
            addCriterion("TipsType =", value, "tipstype");
            return (Criteria) this;
        }

        public Criteria andTipstypeNotEqualTo(Integer value) {
            addCriterion("TipsType <>", value, "tipstype");
            return (Criteria) this;
        }

        public Criteria andTipstypeGreaterThan(Integer value) {
            addCriterion("TipsType >", value, "tipstype");
            return (Criteria) this;
        }

        public Criteria andTipstypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("TipsType >=", value, "tipstype");
            return (Criteria) this;
        }

        public Criteria andTipstypeLessThan(Integer value) {
            addCriterion("TipsType <", value, "tipstype");
            return (Criteria) this;
        }

        public Criteria andTipstypeLessThanOrEqualTo(Integer value) {
            addCriterion("TipsType <=", value, "tipstype");
            return (Criteria) this;
        }

        public Criteria andTipstypeIn(List<Integer> values) {
            addCriterion("TipsType in", values, "tipstype");
            return (Criteria) this;
        }

        public Criteria andTipstypeNotIn(List<Integer> values) {
            addCriterion("TipsType not in", values, "tipstype");
            return (Criteria) this;
        }

        public Criteria andTipstypeBetween(Integer value1, Integer value2) {
            addCriterion("TipsType between", value1, value2, "tipstype");
            return (Criteria) this;
        }

        public Criteria andTipstypeNotBetween(Integer value1, Integer value2) {
            addCriterion("TipsType not between", value1, value2, "tipstype");
            return (Criteria) this;
        }

        public Criteria andStorecodeIsNull() {
            addCriterion("StoreCode is null");
            return (Criteria) this;
        }

        public Criteria andStorecodeIsNotNull() {
            addCriterion("StoreCode is not null");
            return (Criteria) this;
        }

        public Criteria andStorecodeEqualTo(String value) {
            addCriterion("StoreCode =", value, "storecode");
            return (Criteria) this;
        }

        public Criteria andStorecodeNotEqualTo(String value) {
            addCriterion("StoreCode <>", value, "storecode");
            return (Criteria) this;
        }

        public Criteria andStorecodeGreaterThan(String value) {
            addCriterion("StoreCode >", value, "storecode");
            return (Criteria) this;
        }

        public Criteria andStorecodeGreaterThanOrEqualTo(String value) {
            addCriterion("StoreCode >=", value, "storecode");
            return (Criteria) this;
        }

        public Criteria andStorecodeLessThan(String value) {
            addCriterion("StoreCode <", value, "storecode");
            return (Criteria) this;
        }

        public Criteria andStorecodeLessThanOrEqualTo(String value) {
            addCriterion("StoreCode <=", value, "storecode");
            return (Criteria) this;
        }

        public Criteria andStorecodeLike(String value) {
            addCriterion("StoreCode like", value, "storecode");
            return (Criteria) this;
        }

        public Criteria andStorecodeNotLike(String value) {
            addCriterion("StoreCode not like", value, "storecode");
            return (Criteria) this;
        }

        public Criteria andStorecodeIn(List<String> values) {
            addCriterion("StoreCode in", values, "storecode");
            return (Criteria) this;
        }

        public Criteria andStorecodeNotIn(List<String> values) {
            addCriterion("StoreCode not in", values, "storecode");
            return (Criteria) this;
        }

        public Criteria andStorecodeBetween(String value1, String value2) {
            addCriterion("StoreCode between", value1, value2, "storecode");
            return (Criteria) this;
        }

        public Criteria andStorecodeNotBetween(String value1, String value2) {
            addCriterion("StoreCode not between", value1, value2, "storecode");
            return (Criteria) this;
        }

        public Criteria andItemcodeIsNull() {
            addCriterion("ItemCode is null");
            return (Criteria) this;
        }

        public Criteria andItemcodeIsNotNull() {
            addCriterion("ItemCode is not null");
            return (Criteria) this;
        }

        public Criteria andItemcodeEqualTo(String value) {
            addCriterion("ItemCode =", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeNotEqualTo(String value) {
            addCriterion("ItemCode <>", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeGreaterThan(String value) {
            addCriterion("ItemCode >", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeGreaterThanOrEqualTo(String value) {
            addCriterion("ItemCode >=", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeLessThan(String value) {
            addCriterion("ItemCode <", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeLessThanOrEqualTo(String value) {
            addCriterion("ItemCode <=", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeLike(String value) {
            addCriterion("ItemCode like", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeNotLike(String value) {
            addCriterion("ItemCode not like", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeIn(List<String> values) {
            addCriterion("ItemCode in", values, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeNotIn(List<String> values) {
            addCriterion("ItemCode not in", values, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeBetween(String value1, String value2) {
            addCriterion("ItemCode between", value1, value2, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeNotBetween(String value1, String value2) {
            addCriterion("ItemCode not between", value1, value2, "itemcode");
            return (Criteria) this;
        }

        public Criteria andTipslinkIsNull() {
            addCriterion("TipsLink is null");
            return (Criteria) this;
        }

        public Criteria andTipslinkIsNotNull() {
            addCriterion("TipsLink is not null");
            return (Criteria) this;
        }

        public Criteria andTipslinkEqualTo(String value) {
            addCriterion("TipsLink =", value, "tipslink");
            return (Criteria) this;
        }

        public Criteria andTipslinkNotEqualTo(String value) {
            addCriterion("TipsLink <>", value, "tipslink");
            return (Criteria) this;
        }

        public Criteria andTipslinkGreaterThan(String value) {
            addCriterion("TipsLink >", value, "tipslink");
            return (Criteria) this;
        }

        public Criteria andTipslinkGreaterThanOrEqualTo(String value) {
            addCriterion("TipsLink >=", value, "tipslink");
            return (Criteria) this;
        }

        public Criteria andTipslinkLessThan(String value) {
            addCriterion("TipsLink <", value, "tipslink");
            return (Criteria) this;
        }

        public Criteria andTipslinkLessThanOrEqualTo(String value) {
            addCriterion("TipsLink <=", value, "tipslink");
            return (Criteria) this;
        }

        public Criteria andTipslinkLike(String value) {
            addCriterion("TipsLink like", value, "tipslink");
            return (Criteria) this;
        }

        public Criteria andTipslinkNotLike(String value) {
            addCriterion("TipsLink not like", value, "tipslink");
            return (Criteria) this;
        }

        public Criteria andTipslinkIn(List<String> values) {
            addCriterion("TipsLink in", values, "tipslink");
            return (Criteria) this;
        }

        public Criteria andTipslinkNotIn(List<String> values) {
            addCriterion("TipsLink not in", values, "tipslink");
            return (Criteria) this;
        }

        public Criteria andTipslinkBetween(String value1, String value2) {
            addCriterion("TipsLink between", value1, value2, "tipslink");
            return (Criteria) this;
        }

        public Criteria andTipslinkNotBetween(String value1, String value2) {
            addCriterion("TipsLink not between", value1, value2, "tipslink");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("Status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("Status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("Status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("Status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("Status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("Status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("Status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("Status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("Status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("Status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("Status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("Status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andRewardIsNull() {
            addCriterion("Reward is null");
            return (Criteria) this;
        }

        public Criteria andRewardIsNotNull() {
            addCriterion("Reward is not null");
            return (Criteria) this;
        }

        public Criteria andRewardEqualTo(String value) {
            addCriterion("Reward =", value, "reward");
            return (Criteria) this;
        }

        public Criteria andRewardNotEqualTo(String value) {
            addCriterion("Reward <>", value, "reward");
            return (Criteria) this;
        }

        public Criteria andRewardGreaterThan(String value) {
            addCriterion("Reward >", value, "reward");
            return (Criteria) this;
        }

        public Criteria andRewardGreaterThanOrEqualTo(String value) {
            addCriterion("Reward >=", value, "reward");
            return (Criteria) this;
        }

        public Criteria andRewardLessThan(String value) {
            addCriterion("Reward <", value, "reward");
            return (Criteria) this;
        }

        public Criteria andRewardLessThanOrEqualTo(String value) {
            addCriterion("Reward <=", value, "reward");
            return (Criteria) this;
        }

        public Criteria andRewardLike(String value) {
            addCriterion("Reward like", value, "reward");
            return (Criteria) this;
        }

        public Criteria andRewardNotLike(String value) {
            addCriterion("Reward not like", value, "reward");
            return (Criteria) this;
        }

        public Criteria andRewardIn(List<String> values) {
            addCriterion("Reward in", values, "reward");
            return (Criteria) this;
        }

        public Criteria andRewardNotIn(List<String> values) {
            addCriterion("Reward not in", values, "reward");
            return (Criteria) this;
        }

        public Criteria andRewardBetween(String value1, String value2) {
            addCriterion("Reward between", value1, value2, "reward");
            return (Criteria) this;
        }

        public Criteria andRewardNotBetween(String value1, String value2) {
            addCriterion("Reward not between", value1, value2, "reward");
            return (Criteria) this;
        }

        public Criteria andRewardtimeIsNull() {
            addCriterion("RewardTime is null");
            return (Criteria) this;
        }

        public Criteria andRewardtimeIsNotNull() {
            addCriterion("RewardTime is not null");
            return (Criteria) this;
        }

        public Criteria andRewardtimeEqualTo(Date value) {
            addCriterion("RewardTime =", value, "rewardtime");
            return (Criteria) this;
        }

        public Criteria andRewardtimeNotEqualTo(Date value) {
            addCriterion("RewardTime <>", value, "rewardtime");
            return (Criteria) this;
        }

        public Criteria andRewardtimeGreaterThan(Date value) {
            addCriterion("RewardTime >", value, "rewardtime");
            return (Criteria) this;
        }

        public Criteria andRewardtimeGreaterThanOrEqualTo(Date value) {
            addCriterion("RewardTime >=", value, "rewardtime");
            return (Criteria) this;
        }

        public Criteria andRewardtimeLessThan(Date value) {
            addCriterion("RewardTime <", value, "rewardtime");
            return (Criteria) this;
        }

        public Criteria andRewardtimeLessThanOrEqualTo(Date value) {
            addCriterion("RewardTime <=", value, "rewardtime");
            return (Criteria) this;
        }

        public Criteria andRewardtimeIn(List<Date> values) {
            addCriterion("RewardTime in", values, "rewardtime");
            return (Criteria) this;
        }

        public Criteria andRewardtimeNotIn(List<Date> values) {
            addCriterion("RewardTime not in", values, "rewardtime");
            return (Criteria) this;
        }

        public Criteria andRewardtimeBetween(Date value1, Date value2) {
            addCriterion("RewardTime between", value1, value2, "rewardtime");
            return (Criteria) this;
        }

        public Criteria andRewardtimeNotBetween(Date value1, Date value2) {
            addCriterion("RewardTime not between", value1, value2, "rewardtime");
            return (Criteria) this;
        }

        public Criteria andOpteridIsNull() {
            addCriterion("opterID is null");
            return (Criteria) this;
        }

        public Criteria andOpteridIsNotNull() {
            addCriterion("opterID is not null");
            return (Criteria) this;
        }

        public Criteria andOpteridEqualTo(String value) {
            addCriterion("opterID =", value, "opterid");
            return (Criteria) this;
        }

        public Criteria andOpteridNotEqualTo(String value) {
            addCriterion("opterID <>", value, "opterid");
            return (Criteria) this;
        }

        public Criteria andOpteridGreaterThan(String value) {
            addCriterion("opterID >", value, "opterid");
            return (Criteria) this;
        }

        public Criteria andOpteridGreaterThanOrEqualTo(String value) {
            addCriterion("opterID >=", value, "opterid");
            return (Criteria) this;
        }

        public Criteria andOpteridLessThan(String value) {
            addCriterion("opterID <", value, "opterid");
            return (Criteria) this;
        }

        public Criteria andOpteridLessThanOrEqualTo(String value) {
            addCriterion("opterID <=", value, "opterid");
            return (Criteria) this;
        }

        public Criteria andOpteridLike(String value) {
            addCriterion("opterID like", value, "opterid");
            return (Criteria) this;
        }

        public Criteria andOpteridNotLike(String value) {
            addCriterion("opterID not like", value, "opterid");
            return (Criteria) this;
        }

        public Criteria andOpteridIn(List<String> values) {
            addCriterion("opterID in", values, "opterid");
            return (Criteria) this;
        }

        public Criteria andOpteridNotIn(List<String> values) {
            addCriterion("opterID not in", values, "opterid");
            return (Criteria) this;
        }

        public Criteria andOpteridBetween(String value1, String value2) {
            addCriterion("opterID between", value1, value2, "opterid");
            return (Criteria) this;
        }

        public Criteria andOpteridNotBetween(String value1, String value2) {
            addCriterion("opterID not between", value1, value2, "opterid");
            return (Criteria) this;
        }

        public Criteria andReplyuserIsNull() {
            addCriterion("ReplyUser is null");
            return (Criteria) this;
        }

        public Criteria andReplyuserIsNotNull() {
            addCriterion("ReplyUser is not null");
            return (Criteria) this;
        }

        public Criteria andReplyuserEqualTo(String value) {
            addCriterion("ReplyUser =", value, "replyuser");
            return (Criteria) this;
        }

        public Criteria andReplyuserNotEqualTo(String value) {
            addCriterion("ReplyUser <>", value, "replyuser");
            return (Criteria) this;
        }

        public Criteria andReplyuserGreaterThan(String value) {
            addCriterion("ReplyUser >", value, "replyuser");
            return (Criteria) this;
        }

        public Criteria andReplyuserGreaterThanOrEqualTo(String value) {
            addCriterion("ReplyUser >=", value, "replyuser");
            return (Criteria) this;
        }

        public Criteria andReplyuserLessThan(String value) {
            addCriterion("ReplyUser <", value, "replyuser");
            return (Criteria) this;
        }

        public Criteria andReplyuserLessThanOrEqualTo(String value) {
            addCriterion("ReplyUser <=", value, "replyuser");
            return (Criteria) this;
        }

        public Criteria andReplyuserLike(String value) {
            addCriterion("ReplyUser like", value, "replyuser");
            return (Criteria) this;
        }

        public Criteria andReplyuserNotLike(String value) {
            addCriterion("ReplyUser not like", value, "replyuser");
            return (Criteria) this;
        }

        public Criteria andReplyuserIn(List<String> values) {
            addCriterion("ReplyUser in", values, "replyuser");
            return (Criteria) this;
        }

        public Criteria andReplyuserNotIn(List<String> values) {
            addCriterion("ReplyUser not in", values, "replyuser");
            return (Criteria) this;
        }

        public Criteria andReplyuserBetween(String value1, String value2) {
            addCriterion("ReplyUser between", value1, value2, "replyuser");
            return (Criteria) this;
        }

        public Criteria andReplyuserNotBetween(String value1, String value2) {
            addCriterion("ReplyUser not between", value1, value2, "replyuser");
            return (Criteria) this;
        }

        public Criteria andGmtreplydateIsNull() {
            addCriterion("GmtReplyDate is null");
            return (Criteria) this;
        }

        public Criteria andGmtreplydateIsNotNull() {
            addCriterion("GmtReplyDate is not null");
            return (Criteria) this;
        }

        public Criteria andGmtreplydateEqualTo(Date value) {
            addCriterion("GmtReplyDate =", value, "gmtreplydate");
            return (Criteria) this;
        }

        public Criteria andGmtreplydateNotEqualTo(Date value) {
            addCriterion("GmtReplyDate <>", value, "gmtreplydate");
            return (Criteria) this;
        }

        public Criteria andGmtreplydateGreaterThan(Date value) {
            addCriterion("GmtReplyDate >", value, "gmtreplydate");
            return (Criteria) this;
        }

        public Criteria andGmtreplydateGreaterThanOrEqualTo(Date value) {
            addCriterion("GmtReplyDate >=", value, "gmtreplydate");
            return (Criteria) this;
        }

        public Criteria andGmtreplydateLessThan(Date value) {
            addCriterion("GmtReplyDate <", value, "gmtreplydate");
            return (Criteria) this;
        }

        public Criteria andGmtreplydateLessThanOrEqualTo(Date value) {
            addCriterion("GmtReplyDate <=", value, "gmtreplydate");
            return (Criteria) this;
        }

        public Criteria andGmtreplydateIn(List<Date> values) {
            addCriterion("GmtReplyDate in", values, "gmtreplydate");
            return (Criteria) this;
        }

        public Criteria andGmtreplydateNotIn(List<Date> values) {
            addCriterion("GmtReplyDate not in", values, "gmtreplydate");
            return (Criteria) this;
        }

        public Criteria andGmtreplydateBetween(Date value1, Date value2) {
            addCriterion("GmtReplyDate between", value1, value2, "gmtreplydate");
            return (Criteria) this;
        }

        public Criteria andGmtreplydateNotBetween(Date value1, Date value2) {
            addCriterion("GmtReplyDate not between", value1, value2, "gmtreplydate");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}